using System;
using System.Collections;
using System.Collections.Generic;
using Medora.Model.Basic;
using Medora.Model.Institutions;

namespace Medora.Model.Persons
{
    public class Visit : PersonConnected
    {
        public DateTime VisitDate { get; set; }
        public DateTime NextVisitDate { get; set; }
        public Guid PlaceId { get; set; }
        public Guid TypeId { get; set; }
        public Guid ProviderId { get; set; }
        public Provider Provider { get; set; }
        public virtual ICollection<ServiceInVisit> Services { get; set; }
        public virtual ICollection<ProcedureInVisit> Procedures { get; set; }
        public virtual ICollection<Referral> Referrals { get; set; }
        public virtual ICollection<Medication> Medications { get; set; }
        public virtual ICollection<DiagnosisInVisit> Diagnosis { get; set; }
        public virtual ICollection<HeightWeightMeasurement> HeightWeightMeasurements { get; set; }
        public virtual ICollection<BloodPressureMeasurement> BloodPressureMeasurements { get; set; }
    }

    public class VisitFilter : IFilter
    {
        public DateTime VisitDate { get; set; }
        public Guid ProviderId { get; set; }
        public Guid PlaceId { get; set; }
        public Guid TypeId { get; set; }
        public Guid PersonId { get; set; }
       /* public Guid DepartmentId { get; set; }
        public Guid InstitutionId { get; set; }*/
    }
}